#include "device.h"

void initBatteristyring()
{

	
}
int batteriSpaending()
{
	// Variabler kun gældende for batteriSpaending
	int batteriSpaending = 0;
	int fejl = 0; // 1 = fejl 0 = fungere
	int Samples = 10; //
	int i = 0;
	// Først vælges de korrekte ben på Mux
	AMux_1_Select(1); // Ben 1 på AMux1
	AMux_2_Select(1); // Ben 2 på AMux2
	
	// Så vælges den config man ønsker og bruge sin ADC i, config 1-4 og restart skal sættes til 0 da dette gør ADC ikke starter før man beder om det.
	ADC_DelSig_1_SelectConfiguration(2, 0);
	// Koden skrives derefter i ADC ISR1 for lys ISR2, for Batterispænding og ISR3 for ladestrøm
	// Dernæst aktiveres IRQ
	ADC_DelSig_1_IRQ_Enable();
	
	while(i < Samples) // Antal samples inden de sendes videre
	{
	 	ADC_DelSig_1_StartConvert();
		i++;
	}
	Samples = 0; // nulstilles og gøres klar næste gang
	ADC_DelSig_1_IRQ_Disable(); // IRQ disables
	// Inden Return skal IRQ disables
	//Den returneres med metadata, sørg for at ladestroem ikke overstiger 12 bit
	return batteriSpaending + ((0b0010) << 12) + (fejl << 15);
}
int ladestroem()
{
	// Variabler kun gældende for batteriSpaending
	int ladestroem = 0;
	int fejl = 0; // 1 = fejl 0 = fungere
	int Samples = 10; // 
	// Først vælges de korrekte ben på Mux
	AMux_1_Select(2); // Ben 1 på AMux1
	AMux_2_Select(1); // Ben 2 på AMux2
	// Dernæst aktiveres ADC og IRQ
		// Så vælges den config man ønsker og bruge sin ADC i, config 1-4 og restart skal sættes til 0 da dette gør ADC ikke starter før man beder om det.
	ADC_DelSig_1_SelectConfiguration(3, 0);
	// Koden skrives derefter i ADC ISR1 for lys ISR2, for Batterispænding og ISR3 for ladestrøm
	// Dernæst aktiveres IRQ
	ADC_DelSig_1_IRQ_Enable();
	
	while(Samples < 10) // Antal samples inden de sendes videre
	{
	 	ADC_DelSig_1_StartConvert();
		Samples++;
	}
	Samples = 0; // nulstilles og gøres klar næste gang
	ADC_DelSig_1_IRQ_Disable(); // IRQ disables
	// Inden Return skal IRQ disables
	//Den returneres med metadata, sørg for at ladestroem ikke overstiger 12 bit
	return ladestroem + ((0b0011) << 12) + (fejl << 15);
}